#ifndef EVA_READER_FACTORY_H
#define EVA_READER_FACTORY_H

#include "algohub_common_type.h"
#include <memory>

namespace reader
{
	class EvaEnvDataReaderBase;
	class EvaEnvDataReaderFactoryPrivate;
	class EvaEnvDataReaderFactory final
	{
	public:
		static EvaEnvDataReaderFactory* Single();
		static std::shared_ptr<EvaEnvDataReaderBase> create(algobase::EvaluateEnvirDataType type);

	private:
		EvaEnvDataReaderFactory();
		~EvaEnvDataReaderFactory();
		EvaEnvDataReaderFactoryPrivate* d;
	};
}

#endif // !EVA_READER_FACTORY_H